package com.vcc.core.derive.admin;

import cn.idev.excel.annotation.ExcelProperty;
import cn.idev.excel.converters.longconverter.LongStringConverter;
import com.vcc.core.derive.converter.DateConverter;
import com.vcc.core.derive.converter.cardOrder.OrderStatusConverter;
import com.vcc.core.derive.converter.cardOrder.OrderTypeConverter;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class DeriveCardOrder implements Serializable {

    @ExcelProperty(value = "id",converter =  LongStringConverter.class)
    private Long id;

    @ExcelProperty(value = "用户id")
    private Long userId;

    @ExcelProperty(value = "账号")
    private String account;

    @ExcelProperty(value = "操作员账号")
    private String operatorAccount;

    @ExcelProperty(value = "卡号")
    private String cardNumber;

    @ExcelProperty(value = "卡号ID",converter =  LongStringConverter.class)
    private Long cardNumberId;

    @ExcelProperty(value = "卡类型ID",converter =  LongStringConverter.class)
    private Long cardTypeId;

    @ExcelProperty(value = "订单号")
    private String orderNo;

    @ExcelProperty(value = "订单状态",converter = OrderStatusConverter.class)
    private String orderStatus;

    @ExcelProperty(value = "订单金额")
    private BigDecimal orderAmount;

    @ExcelProperty(value = "订单币种")
    private String orderCurrency;

    @ExcelProperty(value = "订单类型",converter = OrderTypeConverter.class)
    private String orderType;

    @ExcelProperty(value = "请求时间",converter = DateConverter.class)
    private Date requestTime;

    @ExcelProperty(value = "完成时间",converter = DateConverter.class)
    private Date completeTime;

    @ExcelProperty(value = "订单备注")
    private String orderRemark;

    @ExcelProperty(value = "订单来源")
    private String orderSource;

    @ExcelProperty(value = "代理账号")
    private String dealerAccount;



}
